home *** CD-ROM | disk | FTP | other *** search
/ Complete Linux / Complete Linux.iso / docs / system / mail / transpor / ifmail23.z / ifmail23 / ifmail / iflib / regexpr.c < prev    next >
Encoding:
C/C++ Source or Header  |  1994-02-04  |  497 b   |  31 lines

  1. #include <stdlib.h>
  2. #if defined(HAS_REGEX_H)
  3. #include <regex.h>
  4. #elif defined(HAS_LIBGEN_H)
  5. #include <libgen.h>
  6. #else
  7. char *regcmp();
  8. char *regex();
  9. #endif
  10.  
  11. static char *compiled_reg=NULL;
  12. extern char *__loc1;
  13.  
  14. char *re_comp(mask)
  15. char *mask;
  16. {
  17.     if (compiled_reg) free(compiled_reg);
  18.     compiled_reg=regcmp(mask,NULL);
  19.     return NULL;
  20. }
  21.  
  22. int re_exec(str)
  23. char *str;
  24. {
  25.     char *first_unmatched;
  26.  
  27.     return ((first_unmatched=regex(compiled_reg,str)) &&
  28.         (__loc1 == str) &&
  29.         (*first_unmatched == '\0'));
  30. }
  31.